package com.ruoyi.ktv.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 订单管理对象 ktv_order
 * 
 * @author xubiao
 * @date 2023-03-01
 */
public class KtvOrder extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 订单id */
    private Long orderId;

    /** 订单场次 */
    @Excel(name = "订单场次")
    private String orderSession;

    /** 订单主体id */
    @Excel(name = "订单主体id")
    private String mainProductId;

    /** 订单主体名称：大厅/包厢 */
    @Excel(name = "订单主体名称：大厅/包厢")
    private String mainProductName;

    /** 订单状态 */
    @Excel(name = "订单状态")
    private String orderStatus;

    /** 预订人 */
    @Excel(name = "预订人")
    private String bookingMan;

    /** 预订人联系方式 */
    @Excel(name = "预订人联系方式")
    private String bookingManContact;

    /** 预定时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "预定时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date bookingTime;

    /** 预计进场时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "预计进场时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date enterTimeEstimate;

    /** 预计到场人数 */
    @Excel(name = "预计到场人数")
    private Long peopleAmountEstimate;

    /** 消费者 */
    @Excel(name = "消费者")
    private String consumer;

    /** 消费者联系方式 */
    @Excel(name = "消费者联系方式")
    private String consumerContact;

    /** 入场时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "入场时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date enterTime;

    /** 应付总额 */
    @Excel(name = "应付总额")
    private Long amountReceivable;

    /** 实付总额 */
    @Excel(name = "实付总额")
    private Long amountPaid;

    /** 付款人 */
    @Excel(name = "付款人")
    private String payMan;

    /** 付款时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "付款时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date payTime;

    /** 付款方式 */
    @Excel(name = "付款方式")
    private String payMethod;

    public void setOrderId(Long orderId) 
    {
        this.orderId = orderId;
    }

    public Long getOrderId() 
    {
        return orderId;
    }
    public void setOrderSession(String orderSession) 
    {
        this.orderSession = orderSession;
    }

    public String getOrderSession() 
    {
        return orderSession;
    }
    public void setMainProductId(String mainProductId) 
    {
        this.mainProductId = mainProductId;
    }

    public String getMainProductId() 
    {
        return mainProductId;
    }
    public void setMainProductName(String mainProductName) 
    {
        this.mainProductName = mainProductName;
    }

    public String getMainProductName() 
    {
        return mainProductName;
    }
    public void setOrderStatus(String orderStatus) 
    {
        this.orderStatus = orderStatus;
    }

    public String getOrderStatus() 
    {
        return orderStatus;
    }
    public void setBookingMan(String bookingMan) 
    {
        this.bookingMan = bookingMan;
    }

    public String getBookingMan() 
    {
        return bookingMan;
    }
    public void setBookingManContact(String bookingManContact) 
    {
        this.bookingManContact = bookingManContact;
    }

    public String getBookingManContact() 
    {
        return bookingManContact;
    }
    public void setBookingTime(Date bookingTime) 
    {
        this.bookingTime = bookingTime;
    }

    public Date getBookingTime() 
    {
        return bookingTime;
    }
    public void setEnterTimeEstimate(Date enterTimeEstimate) 
    {
        this.enterTimeEstimate = enterTimeEstimate;
    }

    public Date getEnterTimeEstimate() 
    {
        return enterTimeEstimate;
    }
    public void setPeopleAmountEstimate(Long peopleAmountEstimate) 
    {
        this.peopleAmountEstimate = peopleAmountEstimate;
    }

    public Long getPeopleAmountEstimate() 
    {
        return peopleAmountEstimate;
    }
    public void setConsumer(String consumer) 
    {
        this.consumer = consumer;
    }

    public String getConsumer() 
    {
        return consumer;
    }
    public void setConsumerContact(String consumerContact) 
    {
        this.consumerContact = consumerContact;
    }

    public String getConsumerContact() 
    {
        return consumerContact;
    }
    public void setEnterTime(Date enterTime) 
    {
        this.enterTime = enterTime;
    }

    public Date getEnterTime() 
    {
        return enterTime;
    }
    public void setAmountReceivable(Long amountReceivable) 
    {
        this.amountReceivable = amountReceivable;
    }

    public Long getAmountReceivable() 
    {
        return amountReceivable;
    }
    public void setAmountPaid(Long amountPaid) 
    {
        this.amountPaid = amountPaid;
    }

    public Long getAmountPaid() 
    {
        return amountPaid;
    }
    public void setPayMan(String payMan) 
    {
        this.payMan = payMan;
    }

    public String getPayMan() 
    {
        return payMan;
    }
    public void setPayTime(Date payTime) 
    {
        this.payTime = payTime;
    }

    public Date getPayTime() 
    {
        return payTime;
    }
    public void setPayMethod(String payMethod) 
    {
        this.payMethod = payMethod;
    }

    public String getPayMethod() 
    {
        return payMethod;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("orderId", getOrderId())
            .append("orderSession", getOrderSession())
            .append("mainProductId", getMainProductId())
            .append("mainProductName", getMainProductName())
            .append("orderStatus", getOrderStatus())
            .append("bookingMan", getBookingMan())
            .append("bookingManContact", getBookingManContact())
            .append("bookingTime", getBookingTime())
            .append("enterTimeEstimate", getEnterTimeEstimate())
            .append("peopleAmountEstimate", getPeopleAmountEstimate())
            .append("consumer", getConsumer())
            .append("consumerContact", getConsumerContact())
            .append("enterTime", getEnterTime())
            .append("amountReceivable", getAmountReceivable())
            .append("amountPaid", getAmountPaid())
            .append("payMan", getPayMan())
            .append("payTime", getPayTime())
            .append("payMethod", getPayMethod())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
